package com.iut.model;

import java.lang.annotation.Target;

import com.j256.ormlite.field.DatabaseField;
import com.j256.ormlite.table.DatabaseTable;

@DatabaseTable(tableName="parcelle")
public class Parcelle 
{
	@DatabaseField(unique=true, generatedId=true)
	private int id;
	
	@DatabaseField
	private String name;
	
	@DatabaseField
	private String culture;
	
	@DatabaseField
	private String culturePrecedente;
	
	@DatabaseField
	private int surface;
	
	@DatabaseField
	private String image;
	
	@DatabaseField
	private double latitude;
	
	@DatabaseField
	private double longitude;
	
	@DatabaseField
	private String address;
	
	public int getId() {
		return id;
	}

	public void setId(int id) {
		this.id = id;
	}

	public String getName() 
	{
		return name;
	}
	
	public void setName(String name) {
		this.name = name;
	}
	
	public String getCulture() {
		return culture;
	}

	public void setCulture(String culture) {
		this.culture = culture;
	}

	public String getCulturePrecedente() {
		return culturePrecedente;
	}

	public void setCulturePrecedente(String culturePrecedente) {
		this.culturePrecedente = culturePrecedente;
	}
	
	public String getSurface() 
	{
		return ""+surface;
	}

	public void setSurface(int surface) {
		this.surface = surface;
	}

	
	/**
	 * Retourne la valeur de image
	 * 
	 * @author Sylvain Le Gouellec
	 * @since 1.0.0
	 * @return La valeur de image
	 */
	public String getImage() {
		return image;
	}

	/**
	 * Modifie la valeur de image
	 * 
	 * @author Sylvain Le Gouellec
	 * @since 1.0.0
	 * @param image La nouvelle valeur de image
	 */
	public void setImage(String image) {
		this.image = image;
	}

	/**
	 * Retourne la valeur de latitude
	 * 
	 * @author Sylvain Le Gouellec
	 * @since 1.0.0
	 * @return La valeur de latitude
	 */
	public double getLatitude() {
		return latitude;
	}

	/**
	 * Modifie la valeur de latitude
	 * 
	 * @author Sylvain Le Gouellec
	 * @since 1.0.0
	 * @param latitude La nouvelle valeur de latitude
	 */
	public void setLatitude(double latitude) {
		this.latitude = latitude;
	}

	/**
	 * Retourne la valeur de longitude
	 * 
	 * @author Sylvain Le Gouellec
	 * @since 1.0.0
	 * @return La valeur de longitude
	 */
	public double getLongitude() {
		return longitude;
	}

	/**
	 * Modifie la valeur de longitude
	 * 
	 * @author Sylvain Le Gouellec
	 * @since 1.0.0
	 * @param longitude La nouvelle valeur de longitude
	 */
	public void setLongitude(double longitude) {
		this.longitude = longitude;
	}

	/**
	 * Retourne la valeur de address
	 * 
	 * @author Sylvain Le Gouellec
	 * @since 1.0.0
	 * @return La valeur de address
	 */
	public String getAddress() {
		return address;
	}

	/**
	 * Modifie la valeur de address
	 * 
	 * @author Sylvain Le Gouellec
	 * @since 1.0.0
	 * @param address La nouvelle valeur de address
	 */
	public void setAddress(String address) {
		this.address = address;
	}

	public Parcelle()
	{
		
	}
	
	public Parcelle(String name, String culture, int surface) 
	{
		this(name,culture,"",surface);
	}
	
	public Parcelle(String name, String culture, String culturePrec, int surface) 
	{
		this.name = name;
		this.culture = culture;
		this.culturePrecedente = culturePrec;
		this.surface = surface;
	}
	
	public Parcelle(String name, String culture, String culturePrec, int surface, String image, double latitude, double longitude, String address) 
	{
		this(name,culture,culturePrec,surface);
		this.image = image;
		this.latitude = latitude;
		this.longitude = longitude;
		this.address = address;
	}
}
